Next: Configuring the Citation Engine, Previous: Anonymous Attributions, Up: Selecting an Attribution
Supercite employs a number of heuristics to decipher the author's name based on value of the ‘From:’ mail field of the original message. Supercite can recognize almost all of the common ‘From:’ field formats in use. If you encounter a ‘From:’ field that Supercite cannot parse, please report this bug using M-x report-emacs-bug.
There are a number of Supercite variables that control how author names are extracted from the ‘From:’ header. Some headers may contain a descriptive title as in:
From: computer!speedy!doe (John Xavier-Doe -- Decent Hacker)
Supercite knows which part of the ‘From:’ header is email address and
which part is author name, but in this case the string
"Decent Hacker" is not part of the author's name.
You can tell Supercite to ignore the title, while still
recognizing hyphenated names through the use of a regular
expression in the variable sc-titlecue-regexp. This
variable has the default value of "\\\\s +-+\\\\s
+". Any text after this regexp is encountered is ignored
as noise.
Some
‘From:’
headers may contain extra titles in the name fields not separated
by a title cue, but which are nonetheless not part of the
author's name proper. Examples include the titles
“Dr.”, “Mr.”, “Ms.”,
“Jr.”, “Sr.”, and “III”
(e.g., Thurston Howe, the Third). Also, some companies prepend or
append the name of the division, organization, or project on the
author's name. All of these titles are noise which should be
ignored. The variable sc-name-filter-alist is used
for this purpose. As implied by its name, this variable is an
association list, where each element is a cons cell of the
form:
(regexp . position)
where regexp is a regular
expression that is matched (using string-match)
against each element of the ‘From:’ field's author name.
position is a position indicator, starting at zero.
Thus to strip out all titles of “Dr.”,
“Mr.”, etc. from the name,
sc-name-filter-alist would have an entry such
as:
("^\\(Mr\\|Mrs\\|Ms\\|Dr\\)[.]?$" . 0)
which only removes them if they appear as the
first word in the name. The position indicator is an integer, or
one of the two special symbols last or
any. last always matches against the
last word in the name field, while any matches
against every word in the name field.